The present invention relates generally to the field of compilers, and more particularly to expanding inline function calls in nested inlining scenarios.
Inline function expansion, or inlining, is a compiler optimization that replaces a function call with the body of the function being called, thereby eliminating the cost of the call-return sequence. Many object oriented programs, such as Java, generally contain a large number of small methods, like getter and setter methods, and so inlining is a very important technique to improve application performance. Inlining allows the compiler to aggregate numerous small methods into larger units which are more amenable to other compiler optimization techniques and removes the function call overheads associated with multiple calls to many small functions.